package modules

import (
	"github.com/gin-gonic/gin"
	"gorm.io/gorm"
	// 自动导入所有模块
	// "x-admin/backend/internal/modules/files"
)

// ModuleRouter 模块路由接口（避免导入router包）
type ModuleRouter interface {
	RegisterRoutes(r *gin.RouterGroup, db *gorm.DB)
	GetModuleName() string
}

// GetAllModules 获取所有模块实例
func GetAllModules() []ModuleRouter {
	// 自动注册所有模块
	var modules []ModuleRouter

	// modules = append(modules, files.NewRouter())

	return modules
}

// InitializeModules 初始化所有模块（如果需要）
func InitializeModules(db *gorm.DB) error {
	// 这里可以添加模块初始化逻辑
	// 比如数据库迁移、默认数据等

	// 初始化 files 模块
	// if err := files.Initialize(db); err != nil {
	//     return err
	// }

	return nil
}
